var GeneratorId = require('../utils/generator-id.js')();
/**
 * 弹窗模型模板
 * @param {Object} cfg
 */
var Dialog = function(cfg) {
	var _dialog_id = GeneratorId.getId('Dialog');
	/**
	 * 创建基础的弹窗模型属性，可以被覆盖
	 */
	var config = {
		value: '', //默认值
		type: '' //预留数据类型
	}
	//复制外界传入的配置
	for(var key in cfg) {
		config[key] = cfg[key];
	}
	/**
	 * 创建弹窗模型私有的属性及方法，无法被覆盖的
	 */
	config.dmbind = _dialog_id;

	//显示当前弹窗
	config.showDialog = function () {
		UEventHub.emit("LayerOpen",this.dmbind);
		// this.refs[this.relation].layerOpen();
    };
    //关闭当前弹窗
    config.hideDialog = function () {
        UEventHub.emit("LayerClose",this.dmbind);
        // this.refs[this.relation].layerClose();
    };

	//监听相关联绑定的DOM元素的值变化，同步更新数据模型的值
	// UEventHub.on(config.relation+UI_EVENT_CONST.SET_UI_VALUE_EVENT, function(v) {
	// 	config.value = v;
	// });
    GiraffObjectManager[_dialog_id] = config;
    console.log(config)
	return config;
}

module.exports = Dialog;